import os

import pytest

from config import report_json_path, report_html_path

if __name__=='__main__':
    # 可通过pytest的main函数来实现执行用例
    # -v -vv -vvv 代表用例执行的详细层度
    # -k 指定执行部分用例，通过用例名称中包含某个关键字的方式去执行："-k","Jia"
    # -m 选择性的执行部分测试用例:通过标签："-m","smoke"
    # -s 执行结果中展示出print的内容
    # -x 遇到失败的用例停止

    #选择性的执行部分测试用例
    #pytest.main([r'./day05/test_JiSuanQi.py','-vvvs','-k','testchu'])
    #通过标签选择性执行部分,在想要执行的部分头上加@pytest.mark.smoke，并且在ini的文件里加入markers=smoke即可
    # pytest.main([ '-vvvs', '-m', 'smoke'])


    #生成报告使用allure-pytest插件（在第三库装）
    #1、先创建一个report包，在创建一个report_json包，在根目录下创建config文件，里面配置各种路径（切记：包里不可套包）
    #

    pytest.main(['-vvvs',f'--alluredir={report_json_path}','--clean-alluredir'])
    #上面代码生成json格式的文件，使用allure工具，将json格式文件，转成html格式文件
    #allure工具的核心功能：
    #1、allure generate - 生成测试报告
    #allure generate 原始文件目录（json） -o(指定输出目标路径)  目标路径 --clean（清空目标路径里的东西）
    #2、allure serve - 本地展示报告：生成一个在线的html格式的测试报告
    #   allure serve 原始文件目录   在原始文件目录下启动该项目   --language zh
    os.system(f'allure generate {report_json_path} -o {report_html_path} --clean ')

